package com.mdb.open.trade.domain.bo.trade;


/*
* Copyright (C), 2017-2019 澳发科技(MDB)
* FileName: TfAttachFileService.java
* Author:   you.yichao
* Date:     2019-07-03
* History:
* <author>          <time>          <version>          <desc>
* you.yichao         2019-07-03          V1.00             代码生成器初始生成代码
* -----------------------------------------------------------
* 作者姓名           修改时间           版本号            描述
*/

import com.mdb.bc.api.data.DataObjectBase;
import com.mdb.open.common.enums.trade.type.AttachFileTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
* 类描述：
*  融资申请附件表数据传输类
*
* @author you.yichao
* @date 2019-07-03
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="SaveAttachFileDto", description="save融资申请附件表Dto对象")
public class SaveAttachFileBo extends DataObjectBase {

    private static final long serialVersionUID = 1L;


    /**
    * 申请单编号
    */
    @ApiModelProperty(value = "申请单编号")
    @NotBlank(message = "申请单编号不允许为空")
    @Size(max = 64, message = "申请单编号最长为{max}位")
    private String applyOrderNo;

    /**
    * 业务单号, 若是在具体业务操作中上传，则必填
    */
    @ApiModelProperty(value = "业务单号, 若是在具体业务操作中上传，则必填")
    @Size(max = 64, message = "业务单号最长为{max}位")
    private String bizOrderNo;

    /**
    * 附件类型
    */
    @ApiModelProperty(value = "附件类型")
    @NotNull(message = "附件类型不允许为空")
    private AttachFileTypeEnum type;

    /**
     * 附件编号
     */
    @ApiModelProperty(value = "附件编号")
    @NotBlank(message = "附件编号不允许为空")
    @Size(max = 64, message = "附件编号最长为{max}位")
    private String fileNo;

    /**
     * 文件名
     */
    @ApiModelProperty(value = "文件名")
    @Size(max = 64, message = "文件名最长为{max}位")
    private String fileName;

    /**
     * 商户编号
     */
    @ApiModelProperty(value = "商户编号")
    @Size(max = 64, message = "商户编号最长为{max}位")
    private String merchantNo;

    /**
     * 客户编码
     */
    @ApiModelProperty(value = "客户编码")
    @NotBlank(message = "客户编码不允许为空")
    @Size(max = 64, message = "客户编码最长为{max}位")
    private String customerCode;

}
